package cn.com.chengmandian.service.erp;

import cn.com.chengmandian.core.web.pojo.AjaxResult;
import cn.com.chengmandian.service.erp.form.BatteryChangeForm;
import cn.com.chengmandian.service.erp.form.BikeBindBatteryForm;
import cn.com.chengmandian.service.erp.form.CreateSendBillRecordForm;
import cn.com.chengmandian.service.erp.form.WarehouseBatteryInventoryForm;
import cn.com.chengmandian.service.erp.pojo.OaSendResponse;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;

@FeignClient(name = "cmd-erp-asset")
public interface ErpAssetClient {

    /**
     * 仓库提交盘点结果
     */
    @PostMapping("/erpasset/inner/battery/inventory/warehouse/add")
    AjaxResult addWarehouseBatteryInventory(@RequestBody WarehouseBatteryInventoryForm warehouseBatteryInventoryForm);

    /**
     * 仓库提交资产变动
     */
    @PostMapping("/erpasset/inner/battery/change/add")
    AjaxResult addBatteryChange(@RequestBody BatteryChangeForm batteryChangeForm);

    /**
     * 电池盘点异常审批完结
     */
    @PostMapping("/erpasset/inner/battery/inventory/approval/notify")
    AjaxResult notifyBatteryInventoryApproval(@RequestBody OaSendResponse response);

    /**
     *生成发货记录
     */
    @PostMapping("/erpasset/inner/send/bill/create")
    AjaxResult createSendBillRecord(@RequestBody CreateSendBillRecordForm form);

    /**
     *发货记录查询
     */
    @GetMapping("/erpasset/inner/send/bill/detail/{stockSendId}")
    AjaxResult getSendBillRecord(@PathVariable("stockSendId") Integer stockSendId);
}
